//
//  BC_Hashtable.h
//  CocOth
//
//  Created by BrunoCausse on 11/03/11.
//  Copyright 2011 poulailler cie. All rights reserved.
//

#import <Foundation/Foundation.h>

#import "BC_Const.h"

@class BC_Board;
@class BC_Hashvalue;



@interface BC_Hashtable : NSObject {
@private
    
    unsigned int capacity;
    unsigned int mask;
    
    NSMutableArray *table;
    
}

- (id)initWithNumberOfBits:(unsigned int)n;

- (BC_Hashvalue *)getWithBoard:(BC_Board *)board;

- (void)updateWithBoard:(BC_Board *)board
            selectivity:(unsigned char)select
                  depth:(unsigned char)aDepth
                 square:(unsigned char)move
                  alpha:(int)lower
                   beta:(int)upper
                  score:(int)value;

- (void)clear;

@end
